
public class Cola {
    private nodo<T>cabeza  ;

	
	public Cola() {
		super();
		this.cabeza = null;
	}
	
	public Object clone()
	{
	Cola temp = new Cola();
	temp.cabeza = this.cabeza;
	return temp;
	}
	
	public nodo<T> getCabeza() {
		return cabeza;
	}

	public void setCabeza() {
		this.cabeza = null;
	}

	
	public nodo crear_nodo(T l){
		nodo temp= new nodo(l);
		System.out.println("se creo el nodo");
		return temp;
	}
	
    public boolean vacia()
    {
    	if(cabeza==null)
    	{
    		return true;
    	}
    	else
    	{
    		return false;
    	}
    }
    public void ingresar(nodo<T> x)
    {
    	if (vacia())
    	{
    		cabeza=x;
    	}
    	else
    	{
    		nodo<T> p = cabeza;
    		while(p.get_ste()!=null)
    		{
    			p=p.get_ste();
    		}
    		p.set_ste(x);
    	}
    }
    public void eliminar ()
    {
    	nodo <T> p;
    	if(vacia())
    	{
    		System.out.println("cola vacia");
    	}
    	else
    	{
    		if(cabeza.get_ste()==null)
    		{
    			p=cabeza;
    			cabeza =null;
    		}
    		else
    		{
    			p=cabeza;
    			cabeza=cabeza.get_ste();
    		}
    	}
    }
    
    public T contenido()
    {
    	if (vacia())
    	{
    		System.out.println("cola vacia ");
    		return null;
    	}
    	else
    	{
    		return cabeza.get_contenido();
    	}
		
    }
    
}